SunUO a free Ultima Online server

SunUO is a free Ultima Online server for Linux/Mono and Windows.NET, based on RunUO. Ultima Online is a commercial MMORPG by Origin / Electronic Arts.

I created this fork of RunUO because I wanted to improve it, but the RunUO team refused to talk to me.

SunUO is designed to be a drop-in replacement for RunUO. No manual changes are required to port an existing RunUO 1.0.0 shard to SunUO.

News

2007/12/25
SunUO 0.5.1

Supports the UO client version 6.0.5.0 and fixes several severe vulnerabilities. download

2007/08/20
SunUO 0.5.0

Supports the UO client version 6. download

2007/06/20
SunUO 0.4.4

Improved NAT traversal, better startup scripts, 64 bit Windows binary included: download

2007/01/09
SunUO 0.4.3

Optimizations, bug fixes, and more: download

2006/12/20
SunUO 0.4.0

This release brings a lot of simplifications. The scripts are now part of SunUO, which means that the RunUO binary distribution isn't required anymore. This allowed me to fix a lot of script bugs. download

2006/08/24
Defiance now powered by SunUO

Yesterday, a long evaluation period at the Defiance headquarters ended. The biggest european freeshard switched over to SunUO!

The switch required only one simple change to the shard: run SunUO.exe instead of RunUO's old Server.exe.

It looks like SunUO manages the same shard with 30% less memory, and world load/save have been accelerated by a few seconds. Plus, SunUO offers portability on both Windows x64 (.NET 2.0) and Unix (Mono).

2006/02/09
DoS by the RunUO team

This night, the RunUO team unsuccessfully tried to perform a Denial of Service attack on the SunUO server. The attacks came from 67.15.136.5, which happens to be www.runuo.com. How childish. Background information here and here.

Update: this is an excerpt from my web server's access log. I have asked Mark from the RunUO team (who hangs around in the #sunuo IRC channel) for an official statement on this issue.

2006/02/08
SunUO 0.3.1

This is a maintenance release, which fixes a bug in the Mobile.SkillMod handler. The world save has been optimized, it's now back on the old speed, maybe even slightly faster. download

2006/02/05
SunUO 0.3.0

Version 0.3.0 gives you: better logging, less memory usage, less CPU usage, lower latency, 64 bit support (.NET 2.0), more configuration options. download

2005/12/14
SunUO forum

SunUO finally got a web forum! Thanks to CaptNemo for creating it.

2005/12/08
Exploit released

I have published my RunUO 1.0.0 exploit, it's written in C and runs on Linux. Get the source here.

2005/11/29
SunUO 0.2.0

The new SunUO version 0.2.0 is released! There are two important reasons for upgrading: first, this release fixes a serious remote vulnerability present in RunUO 1.0.0, though SunUO caught these attacks with its exception handlers (which were insulted by many in the past) - this release brings a "real" fix. Second, version 0.2.0 supports encrypted clients (thanks to Sebastian Hartte).

2005/09/29
about RunUO forks

I'd like to respond to news on runuo.com, but unfortunately, I am perma-banned on their website.

"The entire rationale of releasing RunUO as an open source project was to allow people to fork the core" - funny, I remember how they attacked me for forking RunUO, how I was insulted by RunUO team members (they censored the forum thread meanwhile)

"[...] forks of The RunUO project like to attack the RunUO team as if we have done something wrong to them" - in the SunUO case, I wanted to submit patches instead of forking, but I was insulted and kicked from their servers. How is this not wrong?

"The problem we have is with people who make-believe they are superior to us because they modify a few lines of the core" - wrong, not the people (including me) are superior, but the modified code is - of course, in my opinion, SunUO is superior to RunUO. If I didn't think that, the SunUO project would be pointless. For what reason should I fork an existing project, if not for improving it? Improving naturally leads to a "superior" product. I fail to understand how this is a problem for Ryan.

Enough with this braindead discussion for today.

2005/06/30
SunUO 0.1.9 released
2005/06/14
the SunUO homepage is now on the domain www.sunuo.org. The mailing list and the Subversion repository are hosted on Berlios.
2005/05/10
SunUO 0.1.8 released

Why SunUO?

SunUO was made to address some of the major design issues with RunUO:

Most of RunUO's design flaws are deep within the Scripts directory. The scripts are not free software, therefore I cannot provide corrected versions. I am trying hard to keep compatibility with these flawed scripts, while improving the core.

RUOSI cooperation

I have recently joined to RUOSI team (formerly known as RunUO Russian Edition). They are a group of nice Russians who made the first RunUO fork ever, and they integrated Samurai Empire support (and more). All SunUO improvements have been merged to RUOSI.

The SunUO project will be continued; it will stay for people who prefer a RunUO clone which stays closer to the original code base, for people who who want a stable RunUO replacement, and nothing more. SunUO will stay in sync with future RunUO releases.

Roadmap

Some stuff from my wishlist which is not implemented yet:

I removed "multithreading support" from the list because the RunUO code base does not allow that without a massive rewrite plus a huge scripts code review.