Live data from Hacker News

Reverse-engineering the 1998 Ultima Online demo server

draxinar.github.io

51–60 of 75 posts

Re: Reverse-engineering the 1998 Ultima Online demo server

#51
This part caught my interest:

> each server (so called “shards”) ran on multiple Solaris machines (the map was split by regions).

Found this 13 year old Quora commment (from https://www.quora.com/What-was-the-technology-stack-driving-...).

Ruben Cortez

Those original servers were Sun Ultra II's running Solaris. If I remember correctly, it was a dual proc box (rare in those days), 300mhz, with 256MB of ram (which we subsequently upgraded to 512MB for a boat load of cash). The server weighed a ton, and certainly wasn't rack mountable. and they cost about $30k each, making one UO shard cost about $150k (not including external storage), which is a ridiculous amount of money these days for a single shard. We eventually built MMO shards for a lot less (including MCO, TSO, ENB, and of course SWTOR) cost per shard. Back ups were kept on internal storage, for which we sweated buckets over everytime we lost a drive. we eventually centralized backups on an Hitachi Storage array that was a monster and weighed easily 100lbs and provided a whopping ~10GB of raw space.

I think where we revolutionized administration of a distributed MMO was on the network side, specifically via the VPN, which was very new at that time. Short of ordering PTP circuits all over the country and world, we used a software VPN to create those tunnels over our public internet connection at the time (a SINGLE DS3 -- it wasn't until late 1998 that we had a second circuit!) to allow for login handoff, administration, backups, publishes, etc. our hub and spoke VPN design and subsequent fully-meshed design were what made distributing shards economically feasible.

I think it was around mid 1999 when we converted to Linux, but not before using Solaris x86 first for a time. We bought Dell Towers to act as servers (Dell didn't ship a true rack-mountable server until the following year or so I think) and they were slightly better on speed than the Suns and at a much lower cost. But i think we needed more of them per shard, especially as we released expansion packs (which in those days, meant adding a new server to handle the added land mass). We were likely closer to 10 servers/shard around 2000/1.

Credit to Mark Rizzo for the architecture and buildout of the UO's backend. It was way ahead of it's time, and the innovations we mustered back then is so taken for granted these days (but isn't that true for everything?!).

That timeline for Solaris (Sparc) -> Solaris (x86) -> Linux (x86) feels very familiar from my small company developer job at the time.

Re: Reverse-engineering the 1998 Ultima Online demo server

#52
Oh, UO...such good memories. I remember biking down to Cybersmith in Palo Alto to buy pre-paid time since I wasn't old enough to have a card. Used to rock it on the Napa Valley shard back in the day (I wasn't brave enough for Catskills).

Nowadays I miss the UO experience but simply don't have time to sink into anything like it.

Re: Reverse-engineering the 1998 Ultima Online demo server

#53

For anyone wanting to try UO out, it's still a game with an active player base. There are 3rd party servers like UO Outlands, which gets closer to the original gameplay. Meaning very harsh in comparison to what most people are used to in today's MMOs. Players can just come to gank you and you'll lose your stuff, etc. The server has 2500+ players logged in right now, so still very much active.

Yeah - I feel like UO outlands is ran better then the original UO. Their discord is pretty active too about 20k users on there.

Re: Reverse-engineering the 1998 Ultima Online demo server

#54
As the final and last surviving dev of eqclassic I found this interesting, but expected more story meat on how tools were used and the overall process. Nevertheless, a nice read.

I didn't have an LLM back then but also at least some debug symbols from a powerpc binary that was 3 years in the future, it helped a bit.

Some of your file names seem eerily familiar like packet_handler and entitylist :D

The final frontier is basically having a perfect netcode before polishing up the rest, but that was already a waste of a couple 100h so far.

I only glanced over the source a bit, but it does not seem like some reliably mechanic on top is used because its TCP all the way down? Interesting... if thats the case - it seems like a "slow" choice for an MMO back then.

Re: Reverse-engineering the 1998 Ultima Online demo server

#58
post #29

Earlier quoted context omitted.

> somehow all the 3d MMOs seemed to downgrade a lot of the interesting Unfortunately two things turned out to be true: 1) Most people don't want any of this and prefer to be on rails 2) The two groups of people most attracted to a game like this wind up in a dynamic where one group will leave the game if the other is present. Whereas the 2nd group requires the 1st to want to play.

The “rails” thing is very much the gist of it. Don’t get me wrong, I think classic WoW is probably one of the best games ever made, but after it came out, nobody wanted the raw experience of early online worlds anymore. Which is just life I guess.

Yep. After I stopped UO I took a break for a few years and picked up WoW after it had already settled in for a bit. I was surprised how on rails it was. Get a quest? Well my UI plugin tells me exactly what to go. Add *any* sort of mystery or nondeterminism? People whine.

This is also where I first started seeing people focusing on "end game", although it may have existed in EQ. The actual sandbox-ish game was just a warmup you blasted through in order to get to the "real game". Meanwhile I ran around solo and just explored, and did whatever weird thing I wanted.

Re: Reverse-engineering the 1998 Ultima Online demo server

#59
post #32

For anyone wanting to try UO out, it's still a game with an active player base. There are 3rd party servers like UO Outlands, which gets closer to the original gameplay. Meaning very harsh in comparison to what most people are used to in today's MMOs. Players can just come to gank you and you'll lose your stuff, etc. The server has 2500+ players logged in right now, so still very much active.

OOooOooOoooOoO

An Corp & have a great day

Re: Reverse-engineering the 1998 Ultima Online demo server

#60
post #23

Earlier quoted context omitted.

> Wow, old school runescape, final fantasy online, not much else worth it. What about - Star Wars: The Old Republic (SWTOR), - The Elder Scrolls Online (ESO), - Guild Wars 2 (GW2), - EVE Online, - Black Desert?

All of them (except Eve) feel too much like WoW reskins to bother with. This is personal opinion but the feeling probably reflects why they have 1% (estimated by ChatGPT) of WoW’s subscriptions.

Eve is more of an Excel reskin.
Post reply on HN