Live data from Hacker News

Reverse-engineering the 1998 Ultima Online demo server

draxinar.github.io

21–30 of 75 posts

Re: Reverse-engineering the 1998 Ultima Online demo server

#21

My first real programming achievement was building a website for an Ultima Online shard. I wrote some really terrible PHP and HTML, but it worked for 20+ years afterwards. Great memories! I was surprised that there is still an active community around UO! In any case, this is very cool. Thanks for sharing!

Similar experience, I helped to build the website, manage the forum installation, and overtime the people running the shard invited me to also code for the emulator they were running.

I was 12-13 at the time (late 90s/early 2000s), I can't remember the emulator anymore, very likely it was POL, and the concept behind the shard was to be as close as possible to the official servers before UO:Renaissance so we worked quite a lot to make it look and feel as T2A. I learnt a lot, later when RunUO came out and became a bit stable (circa 2003) I helped to migrate what we had done within POL to C# code for RunUO, had to learn a lot more to keep up.

The other people working on this shard were all in university studying CS, or already had jobs as programmers, I was the kid who could write some scripts, I believe having this experience was pivotal for me to later become a professional. My first job in a real tech company even came from a recommendation one of these guys made when an internship position opened.

In a way I probably only have my career because of UO and private shards.

Re: Reverse-engineering the 1998 Ultima Online demo server

#22

My first real programming achievement was building a website for an Ultima Online shard. I wrote some really terrible PHP and HTML, but it worked for 20+ years afterwards. Great memories! I was surprised that there is still an active community around UO! In any case, this is very cool. Thanks for sharing!

> My first real programming achievement was building a website for an Ultima Online shard

Mine too! My second one was changing the map (remove static items, add new islands and buildings, etc), and my third one was changing verdata.mul to add new animations and item graphics.

Playing Ultima Online on an unofficial POL server literally got me into IT. I was studying to be an accountant before that.

Re: Reverse-engineering the 1998 Ultima Online demo server

#23

Earlier quoted context omitted.

Maybe there is some opportunity there? Very little going on in the mmo world now tbh. Wow, old school runescape, final fantasy online, not much else worth it.

> 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.

Re: Reverse-engineering the 1998 Ultima Online demo server

#24

Well, props for that effort. I liked the old Ultima saga, in particular from 5 to 7. Ultima 8 ... I did not hate it, but they killed off the old concept. Perhaps the old genre was meant to die anyway, but it was such a big difference from 7 to 8. While 7 is often the most praised variant, I particularly hated combat; it was much easier in Ultima 6. Either way it was specific for the 1990s era for the most part, which…

Did you ever get into Ultima Online?

UO was the only Ultima game I played. I got into programming doing Sphere and RunUO emulation as a kid without ever knowing about the long history of Ultima games. Assuming that all of the brilliance of UO was architected in a few year span of development. Now looking back at the series seeing all the foundations is incredible. Overnight success 20 years in the making.

Re: Reverse-engineering the 1998 Ultima Online demo server

#25
Quote: If anyone out there has the dynamic0.mul or dynamic0.bkp (server savegames) or regions.txt (spawn definitions) or resbank.mul (resources definitions) files from the original Ultima Online servers, circa 1997-2003, I’d be very grateful if you could send them to me. It seems very unlikely that the original dynamic0.mul or dynamic0.bkp files are truly lost, since they were surely backed up in multiple safe places.

These files would be extremely valuable to produce a highly accurate reproduction of the Ultima Online world content.

Re: Reverse-engineering the 1998 Ultima Online demo server

#26
post #21

My first real programming achievement was building a website for an Ultima Online shard. I wrote some really terrible PHP and HTML, but it worked for 20+ years afterwards. Great memories! I was surprised that there is still an active community around UO! In any case, this is very cool. Thanks for sharing!

Similar experience, I helped to build the website, manage the forum installation, and overtime the people running the shard invited me to also code for the emulator they were running. I was 12-13 at the time (late 90s/early 2000s), I can't remember the emulator anymore, very likely it was POL, and the concept behind the shard was to be as close as possible to the official servers before UO:Renaissance so we worked qu…

Same, when I got into UO emulation I used Sphere for a month then this new C# emulator called RunUO was announced haha and I moved over (~ Aug 2001). There's still a forum post from 26 years ago of me remarking about all the brackets { } involved in writing C# code ha. But I remember that spark when I made a change in a sword file and saw it reflected in game. Been chasing and riding that high ever since. Led to a career in software development but more importantly unlocked some of the greatest joy in life I'm sure everyone here can attest to.

Re: Reverse-engineering the 1998 Ultima Online demo server

#28
Interesting, the reversing was done with radare2? I mean it's pretty neat and I wish I would use it more often (so I don't keep forgetting the commands and workflows...) but Ghidra or even the now-free-for-personal-use IDA Pro are so much better and move convenient, at least to me.

Re: Reverse-engineering the 1998 Ultima Online demo server

#29
post #3

The UO emulator scene got me into network programming. I've never seen an online game capture so many ancillary/emergent/accidental gameplay mechanics as well as this, somehow all the 3d MMOs seemed to downgrade a lot of the interesting economics, building, exploring that UO delivered. PvP and quest type stuff is probably a lot better in other games but it was still compelling and you could realistically play solo or…

> 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.

Re: Reverse-engineering the 1998 Ultima Online demo server

#30

My first real programming achievement was building a website for an Ultima Online shard. I wrote some really terrible PHP and HTML, but it worked for 20+ years afterwards. Great memories! I was surprised that there is still an active community around UO! In any case, this is very cool. Thanks for sharing!

Mine was automating mining ore via an assist tool called UOInject. I think the language there was Visual Basic. I started programming purely out of necessity.
Post reply on HN