* * * * * I never got the memo on “copyover servers” > There’s only so much you can do with builder rights on someone else’s MUD > (MultiUser Dungeon). To really change the game, you needed to be able to > code, and most MUDs were written “real languages” like C. We’d managed to > get a copy of Visual C++ 6 and the CircleMUD source code, and started > messing about. But the development cycle was pretty frustrating — for every > change, you had to recompile the server, shut it down (dropping everyone’s > connections), bring it back up, and wait for everyone to log back in. > > Some MUDs used a very cool trick to avoid this, called “copyover” or > “hotboot”. It’s an idiom that lets a stateful server replace itself while > retaining its PID (Process IDentification) and open connections. It seemed > like magic back then: you recompiled the server, sent the right command, > everything froze for a few seconds, and (if you were lucky) it came back to > life running the latest code. The trick is simple but I can’t find a > detailed write-up, so I wanted to write it out while I thought of it. > Via Lobsters [1], “How Copyover MUD Servers Worked | Blog | jackkelly.name [2]” Somehow, in all my years of programming (and the few years I was looking into the source code of various MUDs back in the early 90s) I never came across this method of starting an updated version of a server without losing any network connections. In hindsite, it's an obvious solution—it just never occured to me to do this. [1] https://lobste.rs/s/fwqjqm/how_copyover_mud_servers_worked [2] http://jackkelly.name/blog/archives/2025/02/06/how_copyover_mud_servers_worked/ --- Discussions about this page Lazy Reading for 2025/02/23 – DragonFly BSD Digest https://www.dragonflydigest.com/2025/02/23/lazy-reading-for-2025-02-23/ Email Sean Conner at sean@conman.org .