4 ms·
Who gets to define hacking vs playing? The bot is executing the game code with exactly the same behavior as a human would experience. Yes, the bot is taking a
by vikingerik 4y ago
Who gets to define hacking vs playing? The bot is executing the game code with exactly the same behavior as a human would experience.
Yes, the bot is taking advantage of hidden state with the RNG... but there's nothing stopping a human from doing the same. It's possible for a human to take enough RNG-based actions and observe the outcomes to derive the current state of the RNG seed. Maybe that number is in the thousands or millions of actions, but a human could do it the same as a bot, we just don't choose to try.
- YeGoblynQueenne 4y agoTo be honest I don't find splitting hairs about hacking vs. playing interesting. The OP specifically wrote that without restrictions Nethack is solved. In truth it isn't because the bot in their article has to know the RNG seed to ascend. Without knowledge of the RNG seed the bot can't ascend. So it's not removing restrictions that helps the bot ascend but giving it an advantage by revenging the RNG seed.
- moomin 4y agoOP here: if you read the article, their big insight is that the RNG is completely computable. So with unrestricted computation/storage, you can deduce the RNG seed and proceed from there. Strictly speaking you still need to build something smart enough to get to a fountain, but that’s a significantly smaller challenge.
- vikingerik 4y agoRight, that was my point. The RNG is completely computable, by either a bot or a human player, even without directly observing the hidden state, if you could do enough actions and observe the results to deduce the hidden state of the RNG seed from that. There's an argument that would call this cheating, but I don't think so. There's plenty of hidden state in Nethack (unidentified items, anything out of your field of view at the moment) and playing the game is largely an exercise in deducing that. The so-called RNG is no different, it's just another piece of hidden state, as far as the program is concerned.