Projects/VitaliaMUD

From juliano.info

Jump to: navigation, search

VitaliaMUD

VitaliaMUD.png
License: CircleMUD License
Languages: C
Status: Development Halted

VitaliaMUD is a mature and well-developed MUD server with its user interface fully translated to Brazilian Portuguese. I was the lead programmer and maintened it for more than five years along with two close friends. This was by far the most important of my software projects, where I met very precious people and could enhance my programming skills the most. I'm no longer working on this project.

A Little Bit of History

VitaliaMUD was part of a bigger project, O Mundo de Vitália, aimed on providing an online RPG for Brazilian players, on a virtual epic-medieval world. I joined the team and took the project up in 1999 (it had a different name on that time). The other two mantainers joined some short time after, and the three of us lead the project until its shutdown, on Oct 19, 2004.

I could talk a lot more about the history of O Mundo de Vitália, but it doesn't belong on this page, I'll only say that it was pretty successful and well-known among Brazilian MUD players, we had about a thousand active players and sometimes peaks of more than a hundred simultaneous players.

About the Software

Although most of my software projects are open source, VitaliaMUD is not. It does even contain source code that is not my own intelectual property. If you want to start a MUD and came here looking for a way to download VitaliaMUD, sorry, there isn't. I would suggest reading this page.

VitaliaMUD was originally only the game server, written in C and built over the CircleMUD codebase. As more and more features were implemented, other subprojects were born from it, and the server ended up on a set of core libraries and several peripheral programs based on these libraries. BX, one of my open source projects, was used as one of the core libraries.

The pieces that formed the latest versions of VitaliaMUD were:

VitaliaMUD Server
The most important part.
VitaliaMUD SMTP
Since the server should never halt even for a single second during gameplay, this helper utility stays in charge of the task of communicating with sendmail or an external SMTP server for sending e-mail messages.
VitaliaMUD Proxy
A bridge client, where many players on the same network can connect to the server using a single TCP connection.
VitaliaMUD Genesis
A GUI-based (GTK), multi-platform area editor. Never reached production level, was in beta stage when O Mundo de Vitália was shutdown.

The whole project summed up to about 130.000 lines of C code, not counting all the code I had to erase and rewrite several times to progressively fix the original lack of object-orientedness of the CircleMUD codebase. Some of its unique features include:

Asynchronous hostname lookup
A very common problem on CircleMUD-based MUD's is that the whole server lags (stops responding for a few seconds) every time a player connects if your underlying nameserver is slow. Using ADNS to asynchronously resolve hostnames, only the connection of that player have to wait.
Multi-language command table
Players can choose to use the original command table, similar to every other MUD server, or a translated one, which all commands in Brazilian Portuguese.
E-Mail integration
VitaliaMUD can generate and deliver many kinds of automated e-mail messages, varying from player approval, password change, system reports and even SMS messages for administration purposes.
Plugin support
Several plugin modules are available, and can be loaded or unloaded while the server is running, adding extra functionality on-the-fly.
Proxy connection
When a closed network with many players has a single internet connection, it is possible to create a proxy connection to the VitaliaMUD Server, by running a custom bridge client. A single TCP connection is established to the server, and many players can play through it. This reduces resource usage for the server and simplifies the network management.
Views