Reverse Enginering Ultima Online

Started by
-1 comments, last by smelagnaus 13 years ago
Morning all,
My first time here. I'm sure i'll find here some great mind that would like to share useful infos.

More than ten years ago a game set a new standstill point in the game panorama it was Ultima Online.
It can probably be recognized has the first MMORPG.

What i'm looking for is to dig into the entire Ultima Online platform in order to discover "how it works".

In order to help the discussion ignite i would like to share few question:

- How the client handle the walking mash (walkable against not walkable areas)
- How the client handle different high tiles (ultima use a isometric tile based map). Pg can run over architectonic elements, fiding the under feets element heigh.
It can do really faster. what tecniques they used?

- How the server (running in a 300mhz pentium 3) can handle 400+ connections? What kind of services the server handle?
- What is the procedure to keep the world in sync ? Can be something like:, player A decide to attack player B. Player A cast spell to Player B, player A make request to the server to cast over the player B the spell. Server do the math to deny or accept the request (line of sight for i.e.). Server send notification to both the player A and B to show animation on each player (plus to all the player in the sight range).
- Is client or server handling the walking mash? (we must remember that elment in the map can be both static (on client) or dynamic (on server as element of the world) In both cases server can stop player (in case the player want to cheat)
- what kind of authentication and security system does it uses?

- On graphic side it was quite simple, but we can notice an use of light control (spells cast a glow light around things, and light candle cast a diffuse light). It can't be just an overlay light image since it changes due to elements around (a wall can stop light diffusion) so, what did they use?

- All the servers (official and unofficial) use a scripting lanauge while the main server is written in other language (usually c++ or c#). Would be interesting to understand the way a game i planned to integrate a solide scripting language.

also lot of interesting other question will follow, and comes out from our disucssion!
so let the fun start :D

This topic is closed to new replies.

Advertisement