by Chacal » Tue Mar 25, 2008 9:34 pm
First you must understand that having multiplayer-compatible Ages still gives you only clients. It doesn't give you a Uru server.
The only way you can build a Uru server is to analyze the traffic in and out of your client, which tells you how the server reacts to events you send to it. Then you can start programming a server which acts the same way.
Back in 2004-2005, Almlys and others did just that. They captured packets from Uru Live before it shut down and they built a server. This was the Alcugs project. It got sidetracked when Cyan decided to offer the Uru Live server code to the community, so we could run Uru servers (called "shards") while Cyan kept control of the authentification server. This was Until Uru. A few people could afford to set shards up on physical servers (computers) with good bandwidth (not your home-based computer).
Operating a server is expensive in setup and maintenance time. I run several game servers, those are reasonably stable and bug-free, big commercial games like BF2, TF2, UT3. In theory they should run without human intervention, in reality I'm always fixing something. Ask a shard admin what running an unstable game like UU meant. Operating a server requires a high level of knowledge of operating systems, scripting, networking, security, etc.
An Uru server will need several parts that must work perfectly together: a server engine (for managing events, making decisions, managing the database), an auth server (login), a data server (one or several layers of logic on top of a DBMS such as MySQL). An architecture has to be prepared for the services to work together, and it must be scalable (load balancing, redundancy, etc).
Operating a server is expensive in hardware and network costs. Getting 100Mbps of upload and download into one box in a data center costs hundreds of dollars a month. Only providers get that kind of bandwidth. So you can run a server if you are a provider or if you're willing to rent one and foot the bills (or have someone else foot the bill, which was probably the case for most shard admins).
Chacal
"The weak can never forgive. Forgiveness is an attribute of the strong."
-- Mahatma Gandhi