Remix.run Logo
kethinov 17 hours ago

I'm a fan of UO and I love seeing more projects like this. Nice work!

Obligatory nitpicky aside, a time-honored tradition of HN:

I've long been irritated by the use of the term "server emulator" in gaming contexts. Technically these projects are just reimplementations of a proprietary networking protocol. Nobody calls Samba a "server emulator" because it reimplements the Windows file sharing protocol, because Samba isn't "emulating" anything from the perspective of the traditional definition of "emulator" in computer science.

But for some reason, I guess because "emulator" has colloquially been redefined by non-CS nerd gamer normies as a term for software that lets you play proprietary games on platforms they were not designed for, we have ended up in this new status quo where the term's definition has expanded in this game of telephone way that annoys mainly me and not many other people.

And what's kinda funny is I say that it is a "new" status quo, but it's not even that new. I recall, what, like 20 years ago now I was in an edit war on Wikipedia fighting with people over the "server emulator" article, insisting that the term was technically inaccurate and should not be used. Unsurprisingly in retrospect, I lost that edit war.

Nowadays the whole thing feels like my first "old man yells at cloud" moment, of which I'm sure I'll experience more as I age. I certainly do find new slang introduced by gen Z like "he got the riz!" to be quite cringey, so it looks like I'm well on my way to getting crotchety and terrible about the natural evolution of language! ;)

squidleon 16 hours ago | parent | next [-]

Ha, you're absolutely right from a CS perspective! it's a protocol reimplementation, not emulation in the traditional sense. I've thought about this too. "Server emulator" stuck in the UO/MMO (other example Mangos is "Wow emualtor") community because RunUO and similar projects used the term 20 years ago and it just became the standard label. At this point fighting it feels like your Wikipedia edit war, technically correct but practically hopeless. !

  That said, I'll take the nitpick as a compliment :) means you actually read the project description. Thanks for the kind words!
orphea 16 hours ago | parent [-]

  > other example Mangos is "Wow emualtor"
Do they call themselves an emulator? I'm seeing "a server" or "a reference implementation".
squidleon 16 hours ago | parent | next [-]

You're right, I just checked , MaNGOS calls itself "a server" now. They probably had the same realization at some point. Maybe I should update my README too and just call it "a modern Ultima Online server" instead!. Less baggage.

squidleon 16 hours ago | parent | prev [-]

Just update repo and README from server emulator -> server !

orphea 15 hours ago | parent [-]

While I have your attention - let me wish you good luck with your project! While I'm not an UO gamer (my MMORPG has been WoW - that's where I know Mangos from :P), I'm happy to see a .NET project - I think it's an underappreciated platform; for once, Microsoft made something very cool

squidleon 14 hours ago | parent [-]

Thank you! And yeah, as a fellow .NET developer I totally agree modern .NET is genuinely impressive. The jump from the old .NET Framework to what we have now with .NET 8/9/10 is massive. NativeAOT, source generators, the performance work the runtime team does every release — it's a great platform that doesn't always get the credit it deserves.

  And funny you mention Mangos — the WoW emulation scene was a huge inspiration for UO server development back in the day. Different game, same passion for reverse-engineering and rebuilding these worlds. The
  community-driven server scene is one of the best things about MMO gaming in general.

  Thanks for the kind words and good luck with your WoW adventures! :*!
nebezb 16 hours ago | parent | prev | next [-]

> I've long been irritated by the use of the term "server emulator" in gaming contexts. Technically these projects are just reimplementations of a proprietary networking protocol. Nobody calls Samba a "server emulator" because it reimplements the Windows file sharing protocol, because Samba isn't "emulating" anything from the perspective of the traditional definition of "emulator" in computer science.

I think the distinction is a lot greyer than the black/white you propose.

The very first popular online games used servers mostly to redistribute (and maybe time sync) packets from clients. There is no standard way to to do that. Player-created servers did their best to emulate the official servers logic but it was indeed impossible to replicate it perfectly.

e.g. when breaking up large maps into sectors, the official server might broadcast your location and projectiles X units away and emulators would broadcast it X + 500 units away, which could have an impact on gameplay.

Emulator feels fitting when there is no official server spec to reimplement.

edit: emulator also feels appropriate where servers are responsible for NPC activity or quest-like mechanics. This goes beyond implementing a network protocol. The gameplay is massively impacted.

kethinov 15 hours ago | parent [-]

Your reply did exactly what I complained about: expanding the definition of emulator to cover reimplementing a network protocol.

You're not wrong that "server emulator" is a generically correct use of the term emulation, in the same sense that it is a correct use of the word for someone to say they emulate a fashion sense of a celebrity they like in their own wardrobe.

But in computer science, strictly speaking, the original definition of emulator was more strict. It was about things like emulating processor architecture A so as to execute programs written for it on processor architecture B.

And part of why expanding the definition to include "server emulators" annoys me is why has this definition expansion occurred only in gaming contexts? If a free UO server is a "server emulator" then why is Samba not also a server emulator? The lack of consistency is irritating to me, and it only happened because gamers like the term emulator, not due to any kind of rigorous computer sciencey reason.

daeken 16 hours ago | parent | prev [-]

> I certainly do find new slang introduced by gen Z like "he got the riz!" to be quite cringey

This is interesting to me, if only because it's such a natural bit of slang. Given that it's a shortened form of "charisma", this one just Makes Sense to me! I figure it'd be incredibly cringe for me to use at my age, but it's a good term IMO.

kethinov 15 hours ago | parent [-]

You're right, it absolutely does make sense. And yet it annoys me anyway.

There's been research by linguists (John McWhorter comes to mind) analyzing this phenomenon and it basically just comes down to the fact that as we age, we get more set in our ways, so the linguistic innovations that younger people do just have a tendency to annoy us, even when they logically follow or are objectively useful.

I try not to let it bother me, because it's irrational to feel that way, but it just does lol