Hacker News new | ask | show | jobs
Speculating on the Animal Crossing Turnip Market (insignificantbits.com)
141 points by kho 2238 days ago
8 comments

I was surprised that there was no mention of the secretary problem [1]. Optimal stopping has a whole host of problems and means of evaluating them [2]. I'm curious how this solution compares to just using the 1/e rule.

Generally, the 1/e rule in this situation implies you should evaluate prices until Wednesday afternoon for the max sell price up to that point, and then sell the next time you see a price higher than that max (or Saturday afternoon whichever comes first). You won't always get the best price this way, but you'll perform better than any other know strategy. This strategy works with friends, too, as you can account for their prices in this strategy.

The only reason this may not be the best strategy here is that there are ways of having some information about future prices.

[1] https://en.wikipedia.org/wiki/Secretary_problem [2] https://en.wikipedia.org/wiki/Optimal_stopping

Afaik the 1/e solution is only optimal when you don't know anything about the distribution being draw from (but also why it's amazing). Since the author knows the probability distribution the prices are being draw from you can do much better with a little dynamic programming.
It's also solving a different problem: it maximises the when probability that you get the absolute best match, rather than maximising the expected value of your choice.
Furthermore, I suspect it requires that each measurement is independent and identically-distributed.

If your measurements are correlated (as prices generally are -- if they were lower than average yesterday, they are more likely to be lower than average today), the secretary-problem approach will not work.

Yes, exactly. I was looking to solve the second problem, not the former. Following the secretary rule is good strategy for a lot of things, but I think we actually have more information here.
Hey there, author here.

I am not super well versed on the secretary problem but I think some people have already looked into it for AC [1].

In general, what I was looking was to associate a risk profile to a series of decisions of either HOLD or SELL(amount) given the current probability distribution.

[1]: https://www.reddit.com/r/GAMETHEORY/comments/fn2grx/optimizi...

I think something like backward induction could be used here to find a lower-regret but probably more complicated strategy: https://en.wikipedia.org/wiki/Backward_induction
One detail I didn’t see that affects the risk profile is that every island in AC is their own market and you can buy and sell turnips on other people’s islands.

You can afford to be far more risky than the model suggests if you have a few friends or an active Discord group because on any given day you can almost surely find an island with a profitable price if you need it in a pinch.

See also the Turnip Exchange[0], which has set up automated queue systems for people to visit other people's islands to buy and sell turnips, and now appears to be expanding into other AC:NH trade.

It's been super impressive to watch how quickly the devs there have built out really useful features, and managed the growth in interest - pretty sure the Turnip Exchange Discord is >22,000 people.

[0]: https://turnip.exchange/

considering their patreon currently gives them $11k a month I'd say yes they have interest.
The other thing it ignores is the HUGE number of people time traveling. Because of this, it’s trivial to find somewhere to sell for 500+ if you’re willing to put in an hour of effort on /r/ACTurnips. I “settle” for 350 because way fewer people try to get onto those islands and I can be done faster.
Hey there, author here. For sure, I hinted at this on the last paragraph of the post. The interesting bit is that if you do that you will build a more diversified portfolio (as the turnip price distributions on other islands are not correlated).

And for sure, if you have access to other people islands a lot of this becomes moot, as you will probably just sell at the highest price in any of your friends islands :)

Nintendo was late to dip their toes into f2p game economies and it shows with the poorly balanced bell economy in (farmville-like) Animal Crossing.

Turnips are a terrible way to make bells in the single-player game. You have to buy a stack of them for around 10,000 bells and then wait all week for the market to pop. Let's say you see it pop to 130-160, which is a fairly common range in my experience. For all the hassle of buying and storing turnips (AC's inventory management is high effort and turnips have additional restrictions) you might net 6,000 bells per inventory space. Thing is, Animal Crossing regularly generates bugs and insects which sell for 2,000-8,000 bells. They are also one inventory space, and they are available all the time with no expiration or holding strategy needed. There are also abundant resources like iron ore, where a crafted stack of 30 ore in one inventory space will net you 22,500 bells in profit. Turnips are low value per inventory slot.

To get around this, players coordinated online. Sometimes turnips hit a jackpot price in the 300-600 bell range. So that stack is suddenly worth 60,000 and now we see inventory efficiency worth playing with turnips. All you have to do is join an online group and someone will be having a jackpot day every day. You do have to share profits with the host but the scheme is still worth it.

This is a big economy mistake. 60,000 bells is quite a lot of money in AC, and a backpack full of turnips turns into 2,400,000 bells which is enough money to bypass most of the game. Avg item price is magnitude 3-4 so these are effectively free now. All from doing a single turnip scheme. Of course players will do this with multiple backpack loads and become deep millionaires living off bank account interest.

Nintendo's second mistake was to fix this exploit by attacking a symptom and not the root cause. They reduced interest rates by a magnitude, making it balanced for ppl with huge savings accounts and worthless for anyone playing the game as intended. We of course see the folly in this approach in OPs blog where his wife was punished for playing the game as intended. She is now incentivized to join the turnip schemers, making the problem worse.

Nintendo should either cap the amount of turnips you can sell on a friend's island, reduce the turnip value for island visitors, or disallow visitors selling turnips altogether. Then the bank accounts can remain as is.

Anyone with experience tuning f2p economies would have seen this leak a mile away and prevented it from ever happening. Now Nintendo only has bad options since removing player assets is never an option. Once you leaked you leaked.

Musings from a former f2p economy designer.

As someone who is only vaguely aware of AC, this reads like you're insane.
The Sharpe ratio should be mentioned here. It allows an apple to apples comparison between the performance of different assets in terms of expected return against variance (risk). In an efficiently priced market, assets will be priced to lie on a straight line of unit return vs unit risk. The line itself passes through the y-axis (zero risk) at a point called the 'risk free rate'. This is a hypothetical point but a close proxy in the real world is e.g. US treasury bills. In the game, I assume the bank always pays interest on deposits so it _is_ the risk free rate (0.05%).

Plotting the different strategies, then fitting a straight line (passing through the risk free point) would allow us to say "strategies falling above the line have market beating Sharpe ratios and strategies falling below are underperforming".

Absolutely. I just focused in finding good weight allocations for the given risk, but changing the objective function given to the negative of the sharpe ratio should get you good allocations that maximize the sharpe ratio.

You'll notice I am returning the expected return and variance of the returns. I didn't talk about it too much (besides a high level risk vs. returns at the end) because I didn't want to introduce another concept, but you can readily compare the sharpe ratio using those.

I did a quick analysis (which I had put here but I can't properly format it) here: https://gist.github.com/scast/d7ab3a0f5c5458c11d8624cc73806d...

I found an island selling for 500 bells and time travelled to sunday and went back and forth selling turnips until I got bored. Netted 15,000,000 bells that way.
This doesn't sound fun. :/
I think it's amusing that you mention this, because 'time traveling' appears to be a huge sticking point among fans, with some coming out vigorously against it, almost violently, and 100% in earnest. I've seen people say things like "If you time travel in AC, please unfollow me now." and going as far as writing articles about how time traveling makes you a bad person.

I think it's absolutely fascinating. I'm not by any means a person with credentials to be doing psychoanalysis, but what it seems like is some people are hurt by the fact that other people are able to accomplish more and benefit from it while they are playing 'fair and square' for almost no practical benefit. It seems like a mix of jealousy and harm to their own feeling of accomplishment.

Which relates to this comment for this reason: I'd argue nothing in this game is really fun on its own. It's a busy work simulator. The only real reward is the end result of having done the work. So I think people derive fun from this game in ways that are unusual for video games. Cheating here feels more like "cheating" in real life, to some.

And if you watch different people play this game, you will see that kind of thing play out. Different people get entirely different things out of Animal Crossing games.

I'd argue folks who are ending friendships and getting genuinely angry over time traveling have an unhealthy attachment, but it feels like unhealthy attachment over fiction and leisure has been on the rise over the past ...decade? or so, and so maybe that's not anything in particular to do with Animal Crossing (though, maybe it is partially to do with quarantine, right now.)

> other people are able to accomplish more

By cheating, tho'. It's the same as saying people who get rich by dodging taxes or defrauding people are "accomplishing more" than people who play 'fair and square'.

(Personally, I don't care if people time travel and island-hop to grind turnips all day - it affects nothing about my game and my experience.)

> folks who are ending friendships and getting genuinely angry over time traveling have an unhealthy attachment

Or they might feel that someone who is ok cheating at a zero-stakes, zero-effect game might not be a great person after all. It's the difference between, say, cheating your taxes purely because you want to be rich vs dodging your taxes because you have to feed your family.

> Or they might feel that someone who is ok cheating at a zero-stakes, zero-effect game might not be a great person after all. It's the difference between, say, cheating your taxes purely because you want to be rich vs dodging your taxes because you have to feed your family.

I don’t cheat at Animal Crossing. No real reason not to, I just don’t feel like it. I am not in a rush or anything. But to me, Animal Crossing is (and I mean, to be fair, literally is) a computer program and “cheating” is really just “using in unintended ways” that are not really much different from modding games (that are not intended to be.)

I can’t tell if you are playing devil’s advocate or not but I view this argument as being pretty much projection. I think everyone should feel guilt-free to explore video games and the arts however they enjoy so as long as nobody is directly being harmed by it. I personally would bet the farm and some change that there’s no correlation between cheating in Animal Crossing and “not [being] a great person.”

And I’m not saying this as though I view video games as purely being software and experience absolutely no emotion. I am pretty much saying that for Animal Crossing, but there are plenty of games where I felt very immersed and felt empathy/sympathy for characters the way I would in other realms of fiction and indeed, real life. I couldn’t do “genocide route” in Undertale, for example. But, that also does not mean that I engage in this stuff as if it’s real, because of course, it’s not. It’s fiction. It’s walled off into its own space where I can explore and experience things in ways that I probably wouldn’t and maybe would not want to in real life. I certainly do not condone my actions in Grand Theft Auto as good, but I assure you I am no closer to committing such offenses in real life.

(Aside: I think the video game violence debates are equally fascinating as a subject matter, on that note.)

I am also not at all suggesting how you consume this content has no bearing on reality, but I am certainly saying I believe it’s very non-trivial and fair to handwave as being too complicated and personal to make pure blanket statements about.

I went a bit rambley here, sorry. My thoughts on this subject matter are complicated, although it isn’t really something I hold too personal, especially because the reality is I play exceedingly few video games anymore.

I don’t really condemn anyone for their opinion on this either, but I do feel it is a good moment to reflect and broaden the horizons (pun intended) regarding how people consume and enjoy games. Again, watching people play this game has been absolutely fascinating, no two people I’ve seen appear to get the same exact thing out of it!

> I can’t tell if you are playing devil’s advocate or not

Not really - I can well believe that someone could/would view another person who "cheats" (their opinion) at zero stake games to be a less worthy person. I wouldn't personally condemn someone for "cheating" Animal Crossing - I'd think they were missing the point of the game per my perspective, mind, and it would definitely confuse me about their outlook.

Same as if someone cheated at Monopoly or Scrabble whilst playing board games at home, I guess.

> I think everyone should feel guilt-free to explore video games and the arts however they enjoy

In an ideal world, yes. (I do try but having been a ridiculously cynical and judgemental arsehole for many a year, it is taking some time to adjust.)

> no two people I’ve seen appear to get the same exact thing out of it!

I think that's the beautiful thing about Animal Crossing.

Can you really "cheat" when there is, as you say, nothing at stake and nothing to gain?

What does cheating even mean then?

The reality of Animal Crossing is that it's a PvP game. You compete with the entire world to have the best island for them to come visit or show off on social media. So when people exploit game mechanics to get an unfair advantage, they're outraged. It's the same as someone using an aimbot in an FPS, cheating in a PvP game.

(I personally don't care at all. I am secretly hoping that people are playing this game because they literally have nothing else to do because of COVID-19, and that when people can go outside again, people will not be getting $11,000 a month on Patreon to predict turnip prices. But obviously I am very out of touch on all of this.)

I tried one of the Stalk Market Predictors based on Ninji's decompiled algorithm and it was awful. Didn't get a single day right as we went through the week. Suggested a high of 500-600 on Friday, highest all week was 163.

Which isn't down to the code, I should add, but more that they don't (yet?) know how many times the random generator can be spun outside of the turnip price price setting which obviously makes their predictions very finger in the wind.

Neat little writeup. I'd love to play with the algo and data. OP, if you see this, care to publish a notebook / code on Github?
Well written article. If I was better versed in math I might be able to pose questions on the article, but it is a straightforward explanation.