← Back to context

Comment by chongli

14 hours ago

Drat.

NetHack 5.0 changes thousands and upon thousands of things from the previous release, 3.6.7, which was 3 years ago. 17 years ago is an eternity in this game’s history. The versions may not have gone up hardly at all in that time, but the fix logs are enormous.

Adding up the line counts of the fix logs for the 3.6.X releases with 5.0, I get a total of 6814 lines. That’s bug fixes only. There’s a similarly large number of gameplay changes!

All that is to say, migrating your old save file through all of those changes would’ve been a ton of extra work to support. I know Dungeon Crawl Stone Soup can migrate old save files but they have a very carefully designed system for sunsetting removed features in a way that old save files can still use them.

Wait, what happened to v4??

  • This is a rough history from an outsider: the original developers (“DevTeam”) went quiet, and would not take in new talent. There was some new talent in the community, and momentum for code tidy up and new features. One group forked and called theirs nethack 4. There were other forks with a similar spirit, such as unnethack. Eventually, DevTeam decided to reach an accommodation with talent in the fork groups. Release 5 is a DevTeam release with input from what was new blood fifteen years ago.

    • The story is a bit more convoluted. After the 3.4.3 release in 2003, the DevTeam stopped releasing new versions. They were still responsive when contacted by e-mail, though. But then we also didn't know how the development version looked like.

      In 2014 the dev version was leaked to the community and in the following discussions with the DevTeam on how to handle this, the DevTeam got the first shoot of new devs in a while which lead to the release of 3.6.0 in 2015. This version was a polished version of the dev version, also incorporating some of the popular community patches at the time. The 3.6 branch received regular bugfix and security updates (3.6.7 was released in 2023).

      Since 3.6.0 there's a mirror repository of NetHack on GitHub. So the development version that was internally numbered 3.7.0 which would become 5.0.0 was always accessible and, contrary to the 3.4.3 era, could be played anytime and was also installed on the public servers to play.